package com.ruoyi.api.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.api.domain.BizPhone;
import com.ruoyi.api.mapper.BizPhoneMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.api.mapper.BizPhoneLocationMapper;
import com.ruoyi.api.domain.BizPhoneLocation;
import com.ruoyi.api.service.IBizPhoneLocationService;

/**
 * 电话位置Service业务层处理
 * 
 * @author 魏建波
 * @date 2022-01-21
 */
@Service
public class BizPhoneLocationServiceImpl implements IBizPhoneLocationService 
{
    @Autowired
    private BizPhoneLocationMapper bizPhoneLocationMapper;
    @Autowired
    private BizPhoneMapper bizPhoneMapper;

    /**
     * 查询电话位置
     * 
     * @param id 电话位置主键
     * @return 电话位置
     */
    @Override
    public BizPhoneLocation selectBizPhoneLocationById(Long id)
    {
        return bizPhoneLocationMapper.selectBizPhoneLocationById(id);
    }

    /**
     * 查询电话位置列表
     * 
     * @param bizPhoneLocation 电话位置
     * @return 电话位置
     */
    @Override
    public List<BizPhoneLocation> selectBizPhoneLocationList(BizPhoneLocation bizPhoneLocation)
    {
        return bizPhoneLocationMapper.selectBizPhoneLocationList(bizPhoneLocation);
    }

    /**
     * 新增电话位置
     * 
     * @param bizPhoneLocation 电话位置
     * @return 结果
     */
    @Override
    public int insertBizPhoneLocation(BizPhoneLocation bizPhoneLocation)
    {
        bizPhoneLocation.setCreateTime(DateUtils.getNowDate());
        // 验证机器码是否存在  如果不存在需要加入到数据库
        BizPhone bizPhone = new BizPhone();
        bizPhone.setPhoneSn(bizPhoneLocation.getPhoneSn());
        List<BizPhone> bizPhoneList = bizPhoneMapper.selectBizPhoneList(bizPhone);
        if(bizPhoneList.size()==0){ // 不存在
            // 存入一个呗
            bizPhoneMapper.insertBizPhone(bizPhone);
        }
        return bizPhoneLocationMapper.insertBizPhoneLocation(bizPhoneLocation);
    }

    /**
     * 修改电话位置
     * 
     * @param bizPhoneLocation 电话位置
     * @return 结果
     */
    @Override
    public int updateBizPhoneLocation(BizPhoneLocation bizPhoneLocation)
    {
        return bizPhoneLocationMapper.updateBizPhoneLocation(bizPhoneLocation);
    }

    /**
     * 批量删除电话位置
     * 
     * @param ids 需要删除的电话位置主键
     * @return 结果
     */
    @Override
    public int deleteBizPhoneLocationByIds(Long[] ids)
    {
        return bizPhoneLocationMapper.deleteBizPhoneLocationByIds(ids);
    }

    /**
     * 删除电话位置信息
     * 
     * @param id 电话位置主键
     * @return 结果
     */
    @Override
    public int deleteBizPhoneLocationById(Long id)
    {
        return bizPhoneLocationMapper.deleteBizPhoneLocationById(id);
    }

    @Override
    public void cleanOperLocation() {
        bizPhoneLocationMapper.cleanOperLocation();
    }

    @Override
    public BizPhoneLocation selectLastBizPhoneLocation(BizPhoneLocation bizPhoneLocation) {
        return bizPhoneLocationMapper.selectLastBizPhoneLocation(bizPhoneLocation);
    }
}
